package co.edu.usbcali.unidad.modelo.dto;

import co.edu.usbcali.unidad.modelo.GrupoFamiliar;
import co.edu.usbcali.unidad.presentation.backEndBeans.GrupoFamiliarView;

import java.io.Serializable;

import java.util.Date;

import javax.faces.event.ActionEvent;

/**
 * 
 * 
 * @author Zathura Code Generator http://code.google.com/p/zathura
 * 
 */
public class GrupoFamiliarDTO implements Serializable {
	private static final long serialVersionUID = 1L;
	private String estCodigo_Estado;
	private String perCedula_Persona;
	private String priCodigo_PropietarioInmueble;
	private String grfCodigo;
	private boolean rowSelected = false;
	private GrupoFamiliarView grupoFamiliarView;
	private GrupoFamiliar grupoFamiliar;

	public GrupoFamiliar getGrupoFamiliar() {
		return grupoFamiliar;
	}

	public String listener_update(ActionEvent e) {
		try {
			grupoFamiliarView
					.action_modifyWitDTO(
							((grfCodigo == null) || grfCodigo.equals("")) ? null
									: new String(grfCodigo),
							((estCodigo_Estado == null) || estCodigo_Estado
									.equals("")) ? null : new String(
									estCodigo_Estado),
							((perCedula_Persona == null) || perCedula_Persona
									.equals("")) ? null : new String(
									perCedula_Persona),
							((priCodigo_PropietarioInmueble == null) || priCodigo_PropietarioInmueble
									.equals("")) ? null : new String(
									priCodigo_PropietarioInmueble));
			rowSelected = !rowSelected;
		} catch (Exception ex) {
			return "";
		}

		return "";
	}

	public void listener_cancel(ActionEvent e) {
		grfCodigo = grupoFamiliar.getGrfCodigo().toString();
		estCodigo_Estado = (grupoFamiliar.getEstado().getEstCodigo() != null) ? grupoFamiliar
				.getEstado().getEstCodigo().toString()
				: null;
		perCedula_Persona = (grupoFamiliar.getPersona().getPerCedula() != null) ? grupoFamiliar
				.getPersona().getPerCedula().toString()
				: null;
		priCodigo_PropietarioInmueble = (grupoFamiliar.getPropietarioInmueble()
				.getPriCodigo() != null) ? grupoFamiliar
				.getPropietarioInmueble().getPriCodigo().toString() : null;
		rowSelected = !rowSelected;
	}

	/**
	 * <p>
	 * Bound to commandLink actionListener in the ui that renders/unrenders the
	 * Customer details for editing.
	 * </p>
	 */
	public void toggleSelected(ActionEvent e) {
		grfCodigo = grupoFamiliar.getGrfCodigo().toString();
		estCodigo_Estado = (grupoFamiliar.getEstado().getEstCodigo() != null) ? grupoFamiliar
				.getEstado().getEstCodigo().toString()
				: null;
		perCedula_Persona = (grupoFamiliar.getPersona().getPerCedula() != null) ? grupoFamiliar
				.getPersona().getPerCedula().toString()
				: null;
		priCodigo_PropietarioInmueble = (grupoFamiliar.getPropietarioInmueble()
				.getPriCodigo() != null) ? grupoFamiliar
				.getPropietarioInmueble().getPriCodigo().toString() : null;
		rowSelected = !rowSelected;
	}

	public void setGrupoFamiliar(GrupoFamiliar grupoFamiliar) {
		this.grupoFamiliar = grupoFamiliar;
	}

	public GrupoFamiliarView getGrupoFamiliarView() {
		return grupoFamiliarView;
	}

	public void setGrupoFamiliarView(GrupoFamiliarView grupoFamiliarView) {
		this.grupoFamiliarView = grupoFamiliarView;
	}

	public String getEstCodigo_Estado() {
		return estCodigo_Estado;
	}

	public void setEstCodigo_Estado(String estCodigo_Estado) {
		this.estCodigo_Estado = estCodigo_Estado;
	}

	public String getPerCedula_Persona() {
		return perCedula_Persona;
	}

	public void setPerCedula_Persona(String perCedula_Persona) {
		this.perCedula_Persona = perCedula_Persona;
	}

	public String getPriCodigo_PropietarioInmueble() {
		return priCodigo_PropietarioInmueble;
	}

	public void setPriCodigo_PropietarioInmueble(
			String priCodigo_PropietarioInmueble) {
		this.priCodigo_PropietarioInmueble = priCodigo_PropietarioInmueble;
	}

	public String getGrfCodigo() {
		return grfCodigo;
	}

	public void setGrfCodigo(String grfCodigo) {
		this.grfCodigo = grfCodigo;
	}

	public boolean isRowSelected() {
		return rowSelected;
	}

	public void setRowSelected(boolean rowSelected) {
		this.rowSelected = rowSelected;
	}
}
